package com.ruoyi.maode.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.maode.domain.dto.AddButtonDTO;
import com.ruoyi.maode.domain.entity.PartBpmnButton;
import com.ruoyi.maode.domain.vo.ApproveUserVO;
import com.ruoyi.maode.domain.vo.ButtonVO;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 零件审批按钮Mapper类
 * @author zhangwenqiang
 */
public interface PartBpmnButtonMapper extends BaseMapper<PartBpmnButton> {

    /**
     * 查询按钮列表类
     * @param page
     * @param dto
     * @return
     */
    List<ButtonVO> selectButtonList(@Param("buttonName") String buttonName);

    /**
     * 查询按钮详情数据
     * @param id
     * @return
     */
    ButtonVO selectButton(@Param("id") Long id);

    /**
     * 根据角色ID获取对应的按钮
     * @param roleId
     * @return
     */
    List<ButtonVO> getApproveSubmit(@Param("roleId") Long roleId);

    /**
     * 根据按钮ID和角色ID查询对应审核人
     * @param buttonId
     * @param roleId
     * @return
     */
    List<ApproveUserVO> getApproveUser(@Param("buttonId") Integer buttonId, @Param("roleId") Long roleId);

}
